package br.gov.mi.corporativo.dominio.boundary.rhmi.unidadeestruturamunicipio;

import java.util.List;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.context.support.SpringBeanAutowiringSupport;

import br.gov.mi.corporativo.dominio.boundary.rhmi.unidadeestruturamunicipio.UnidadeEstruturaMunicipioEndPoint;
import br.gov.mi.corporativo.dominio.entidade.rhmi.UnidadeEstruturaMunicipio;

@Path("unidadeestruturasmunicipios")
public class UnidadeEstruturaMunicipioRestAdapter extends SpringBeanAutowiringSupport {
	
	@Autowired
	private UnidadeEstruturaMunicipioEndPoint service;
	
	
	
	@GET
	@Produces({MediaType.APPLICATION_JSON})
	public Iterable<UnidadeEstruturaMunicipio> recuperarTodos(){
		return service.recuperarTodos();
		
	}
	
	@GET
	@Path("id/{idUnidadeEstruturaMunicipio}")
	@Produces({MediaType.APPLICATION_JSON})
	public UnidadeEstruturaMunicipio recuperarPorIdUnidadeEstruturaMunicipio(@PathParam("idUnidadeEstruturaMunicipio")Long idUnidadeEstruturaMunicipio){
		return service.recuperarPorIdUnidadeEstruturaMunicipio(idUnidadeEstruturaMunicipio);
	}
	
	@GET
	@Path("unidadeestrutura/{unidadeEstrutura}")
	@Produces({MediaType.APPLICATION_JSON})
	public List<UnidadeEstruturaMunicipio> recuperarPorUnidadeEstrutura(@PathParam("unidadeEstrutura")Long unidadeEstrutura){
		return service.recuperarPorUnidadeEstrutura(unidadeEstrutura);
	}
	
	@GET
	@Path("municipio/{idMunicipio}")
	@Produces({MediaType.APPLICATION_JSON})
	public List<UnidadeEstruturaMunicipio> recuperarPorIdMunicipio(@PathParam("idMunicipio")Long idMunicipio){
		return service.recuperarPorIdMunicipio(idMunicipio);
	}
}
